Many different standards and protocols have been developed for wireless communications. These standards and protocols are constantly evolving. It is difficult for a hardwired radio device to keep up with the evolving standards and protocols. As a result, many wireless communication devices rapidly become obsolete. In an attempt to overcome this problem, a software-defined radio (SDR) has been defined (see www-sdrforum-org). An SDR is a radio communication system which can tune to any frequency band and receive any modulation across a large frequency spectrum by means of programmable hardware which is controlled by software. An SDR performs significant amounts of signal processing in a general purpose computing environment, or in a reconfigurable piece of digital electronics. The goal of this design is to produce a radio that can receive and transmit a new form of radio standard or protocol just by loading and executing new software. SDRs have significant utility for the military and cell phone services, both of which must serve a wide variety of changing radio standards and protocols in real time. The hardware of a SDR typically consists of a superheterodyne radio frequency (RF) front end which converts RF signals from (and to) analog infrared (IF) signals, analog to digital converters, and digital to analog converters, which are used to convert a digitized IF signal from and to analog form, respectively.
One problem with SDR deployment is that SDRs require significant computational resources and isochrony. Implementations of SDR within a full, multiple address space, multi-user Operating System (OS) on a general purpose computing system cannot meet the quality of service (QoS) deadlines for various protocols and still maintain a usable OS for the user. Thus, the widespread use of SDRs in general purpose computer systems have been delayed.